home *** CD-ROM | disk | FTP | other *** search
/ AmigActive 21 / AACD 21.iso / AACD / Programming / amigatalk / intuition / Window.st < prev    next >
Text File  |  2000-05-16  |  6KB  |  213 lines

  1. "--------------------------------------------------"
  2. " Window Class implements control of Amiga Windows."
  3. "--------------------------------------------------"
  4.  
  5. Class Window :Glyph
  6.   leftEdge   topEdge width  height detailPen   blockPen    flags
  7.   iDCMPFlags title   mouseX mouseY screenTitle windowTitle
  8.  
  9.   reqCount ptrWidth  ptrHeight xOffset   yOffset bitMap 
  10.   minWidth minHeight maxWidth  maxHeight chkMark
  11. !
  12. [
  13.    close
  14.       <primitive 181 0 windowTitle>.
  15.       windowTitle <- nil
  16. |
  17.    setPointer: spritePtr size: sizePt offset: offPt ! w h x y !
  18.       w <- sizePt x.
  19.       h <- sizePt y.
  20.       x <- offPt  x.
  21.       y <- offPt  y.
  22.       <primitive 181 8 spritePtr h w x y windowTitle>
  23. |
  24.    addGadget: gadgetName type: gadgetType
  25.       "gadgetType: 0 = Boolean, 1 = String & 2 = Porportional:"
  26.       <primitive 181 9 gadgetName gadgetType windowTitle>
  27. |
  28.    setFirstGadget: newGadget
  29.       <primitive 181 3 12 newGadget windowTitle>
  30. |
  31.    refreshGadgets
  32.       <primitive 181 4 'RefreshGadgets' windowTitle>
  33. |
  34.    refreshWindowFrame
  35.       <primitive 181 4 'RefreshWindowFrame' windowTitle>
  36. |
  37.    removeGadget: gadgetName type: gadgetType
  38.       <primitive 181 10 gadgetName gadgetType windowTitle>
  39. |
  40.    reportMouse: boolvalue
  41.       <primitive 181 11 boolvalue windowTitle>
  42. |
  43.    getMouseCoords
  44.       mouseX <- <primitive 181 2 8 windowTitle>.
  45.       mouseY <- <primitive 181 2 9 windowTitle>.
  46.       ^ mouseX @ mouseY
  47. |
  48.    printIText: iTextName at: aPoint
  49.       <primitive 181 14 iTextName (aPoint x) (aPoint y) windowTitle>
  50. |
  51.    reOpenWindow
  52.       <primitive 181 15 windowTitle>      
  53. |
  54.    handleIntuition
  55.       ^ <primitive 181 16 windowTitle>
  56. |
  57.    addDMRequest: dMRequesterName
  58.       <primitive 181 5 'AddDMRequest' dMRequesterName windowTitle>
  59. |
  60.    removeDMRequest
  61.       <primitive 181 4 'RemoveDMRequest' windowTitle>
  62. |
  63.    windowToBack
  64.       <primitive 181 4 'WindowToBack' windowTitle>
  65. |
  66.    windowToFront
  67.       <primitive 181 4 'WindowToFront' windowTitle>
  68. |
  69.    showRequester: requesterName
  70.       <primitive 181 5 'ShowRequester' requesterName windowTitle>
  71. |
  72.    addMenuStrip: menuName
  73.       <primitive 181 5 'AddMenuStrip' menuName windowTitle>
  74. |
  75.    removeMenuStrip
  76.       <primitive 181 4 'RemoveMenuStrip' windowTitle>
  77. |
  78.    moveWindow: deltaPt
  79.       <primitive 181 6 'MoveWindow' (deltaPt x) (deltaPt y) windowTitle>
  80. |
  81.    infoReq: msg title: t
  82.       <primitive 181 13 msg t 'OKAY'>
  83. |
  84.    yesNoReq: msg title: t
  85.       ^ <primitive 181 13 msg t 'YES|NO'>
  86. |
  87.    getUserChoice: msg title: t choices: bstr
  88.       ^ <primitive 181 13 msg t bstr>
  89. |
  90.    changeWindowSize: deltaPt
  91.       <primitive 181 6 'SetWindowSize' (deltaPt x) (deltaPt y) windowTitle>
  92. |
  93.    getOrigin
  94.       leftEdge <- <primitive 181 2 0 windowTitle>.
  95.       topEdge  <- <primitive 181 2 1 windowTitle>.
  96.       ^ leftEdge @ topEdge
  97. |
  98.    getWindowSize
  99.       width  <- <primitive 181 2 2 windowTitle>.
  100.       height <- <primitive 181 2 3 windowTitle>.
  101.       ^ width @ height
  102. |
  103.    getWindowPens
  104.       detailPen <- <primitive 181 2 4 windowTitle>.
  105.       blockPen  <- <primitive 181 2 5 windowTitle>.
  106.       ^ detailPen @ blockPen
  107. |
  108.    getFlags
  109.       ^ flags <- <primitive 181 2 6 windowTitle>
  110. |
  111.    getIDCMPFlags
  112.       ^ iDCMPFlags <- <primitive 181 2 7 windowTitle>
  113. |
  114.    beginRefresh
  115.       <primitive 181 4 'BeginRefresh' windowTitle>
  116. |
  117.    endRefresh
  118.       <primitive 181 4 'EndRefresh' windowTitle>
  119. |     
  120.    remakeDisplay
  121.       <primitive 181 4 'RemakeDisplay' windowTitle>
  122. |     
  123.    rethinkDisplay
  124.       <primitive 181 4 'RethinkDisplay' windowTitle>
  125. |
  126.    setWindowOrigin: newPoint ! x y !
  127.       x <- newPoint x.
  128.       y <- newPoint y.
  129.       <primitive 181 3 0 x windowTitle>.
  130.       <primitive 181 3 1 y windowTitle>.
  131.       leftEdge <- x.
  132.       topEdge  <- y
  133. |
  134.    setWindowSize: sizePoint ! w h !
  135.       w <- sizePoint x.
  136.       h <- sizePoint y.
  137.       <primitive 181 3 2 w windowTitle>.
  138.       <primitive 181 3 3 h windowTitle>.
  139.       width  <- w.
  140.       height <- h
  141. |
  142.    setWindowPens: newPensPoint ! fp bp !
  143.       fp <- newPensPoint x.
  144.       bp <- newPensPoint y.
  145.       <primitive 181 3 4 fp windowTitle>.
  146.       <primitive 181 3 5 bp windowTitle>.
  147.       detailPen <- fp.
  148.       blockPen  <- bp
  149. |
  150.    setFlags: newFlags
  151.       <primitive 181 3 6 newFlags windowTitle>.
  152.       flags <- newFlags
  153. |
  154.    setIDCMPFlags: newIDCMP
  155.       <primitive 181 3 7 newIDCMP windowTitle>.
  156.       iDCMPFlags <- newIDCMP
  157. |
  158.    setMinSize: newMinPoint ! minw minh !
  159.       minw <- newMinPoint x.
  160.       minh <- newMinPoint y.
  161.       <primitive 181 3 8 minw windowTitle>.
  162.       <primitive 181 3 9 minh windowTitle>.
  163.       minWidth  <- minw.
  164.       minHeight <- minh      
  165. |
  166.    setMaxSize: newMaxPoint ! maxw maxh !
  167.       maxw <- newMaxPoint x.
  168.       maxh <- newMaxPoint y.
  169.       <primitive 181 3 10 maxw windowTitle>.
  170.       <primitive 181 3 11 maxh windowTitle>.
  171.       maxWidth  <- maxw.
  172.       maxHeight <- maxh
  173. |
  174.    getReqCount
  175.       ^ reqCount <- <primitive 181 2 11 windowTitle>
  176. |
  177.    getPointerSize
  178.       ptrWidth  <- <primitive 181 2 12 windowTitle>.
  179.       ptrHeight <- <primitive 181 2 13 windowTitle>.
  180.       ^ ptrWidth @ ptrHeight
  181. |
  182.    setCheckMark: newCheckMark
  183.       <primitive 181 3 13 newCheckMark windowTitle>.
  184.       chkMark <- newCheckMark
  185. |
  186.    getWindowOffset
  187.       xOffset <- <primitive 181 2 14 windowTitle>.
  188.       yOffset <- <primitive 181 2 15 windowTitle>.
  189.       ^ xOffset @ yOffset
  190. |
  191.    setBitMap: newBitMap
  192.       <primitive 181 3 14 newBitMap windowTitle>.
  193.       bitMap <- newBitMap
  194. |
  195.    getTitle
  196.       ^ title <- <primitive 181 2 10 windowTitle>
  197. |      
  198.    changeTitle: newTitle             "This might be broken!!"
  199.       <primitive 181 12 windowTitle newTitle>.
  200.       windowTitle <- newTitle
  201. |
  202.    getScreenTitle
  203.       ^ screenTitle <- <primitive 181 2 16 windowTitle>
  204. |
  205.    new: newWindowTitle
  206.       windowTitle <- newWindowTitle.
  207.       ^ self
  208. |
  209.    openOnScreen: screenName
  210.       <primitive 181 1 screenName windowTitle>
  211. ]
  212.